<!DOCTYPE suite SYSTEM "https://testng.org/testng-1.0.dtd">
<suite name="All Tests" verbose="1">
    <listeners>
        <listener class-name="org.teststack.token.ExtentTestNGListener"/>
    </listeners>
    <head>
        <title>刘涛的测试报告</title>
        <meta name="generator" content="HTMLTestRunner 0.8.2.2"/>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
        <link href="http://libs.baidu.com/bootstrap/3.0.3/css/bootstrap.min.css" rel="stylesheet">
        <script src="http://libs.baidu.com/jquery/2.0.0/jquery.min.js"></script>
        <script src="http://libs.baidu.com/bootstrap/3.0.3/js/bootstrap.min.js"></script>

        <style type="text/css" media="screen">
            body        { font-family: Microsoft YaHei,Tahoma,arial,helvetica,sans-serif;padding: 20px; font-size: 80%; }
            table       { font-size: 100%; }

            /* -- heading ---------------------------------------------------------------------- */
            .heading {
                margin-top: 0ex;
                margin-bottom: 1ex;
            }

            .heading .description {
                margin-top: 4ex;
                margin-bottom: 6ex;
            }

            /* -- report ------------------------------------------------------------------------ */
            #total_row  { font-weight: bold; }
            .passCase   { color: #5cb85c; }
            .failCase   { color: #d9534f; font-weight: bold; }
            .errorCase  { color: #f0ad4e; font-weight: bold; }
            .hiddenRow  { display: none; }
            .testcase   { margin-left: 2em; }
        </style>

    </head>
    <body >
    <script language="javascript" type="text/javascript">
        output_list = Array();

        /*level 调整增加只显示通过用例的分类 --Findyou
        0:Summary //all hiddenRow
        1:Failed  //pt hiddenRow, ft none
        2:Pass    //pt none, ft hiddenRow
        3:All     //pt none, ft none
        */
        function showCase(level) {
            trs = document.getElementsByTagName("tr");
            for (var i = 0; i < trs.length; i++) {
                tr = trs[i];
                id = tr.id;
                if (id.substr(0,2) == 'ft') {
                    if (level == 2 || level == 0 ) {
                        tr.className = 'hiddenRow';
                    }
                    else {
                        tr.className = '';
                    }
                }
                if (id.substr(0,2) == 'pt') {
                    if (level < 2) {
                        tr.className = 'hiddenRow';
                    }
                    else {
                        tr.className = '';
                    }
                }
            }

            //加入【详细】切换文字变化 --Findyou
            detail_class=document.getElementsByClassName('detail');
            //console.log(detail_class.length)
            if (level == 3) {
                for (var i = 0; i < detail_class.length; i++){
                    detail_class[i].innerHTML="收起"
                }
            }
            else{
                for (var i = 0; i < detail_class.length; i++){
                    detail_class[i].innerHTML="详细"
                }
            }
        }

        function showClassDetail(cid, count) {
            var id_list = Array(count);
            var toHide = 1;
            for (var i = 0; i < count; i++) {
                //ID修改 点 为 下划线 -Findyou
                tid0 = 't' + cid.substr(1) + '_' + (i+1);
                tid = 'f' + tid0;
                tr = document.getElementById(tid);
                if (!tr) {
                    tid = 'p' + tid0;
                    tr = document.getElementById(tid);
                }
                id_list[i] = tid;
                if (tr.className) {
                    toHide = 0;
                }
            }
            for (var i = 0; i < count; i++) {
                tid = id_list[i];
                //修改点击无法收起的BUG，加入【详细】切换文字变化 --Findyou
                if (toHide) {
                    document.getElementById(tid).className = 'hiddenRow';
                    document.getElementById(cid).innerText = "详细"
                }
                else {
                    document.getElementById(tid).className = '';
                    document.getElementById(cid).innerText = "收起"
                }
            }
        }

        function html_escape(s) {
            s = s.replace(/&/g,'&amp;');
            s = s.replace(/</g,'&lt;');
            s = s.replace(/>/g,'&gt;');
            return s;
        }
    </script>
    <div class='heading'>
        <h1 style="font-family: Microsoft YaHei">刘涛的测试报告</h1>
        <p class='attribute'><strong>测试人员 : </strong> 刘涛</p>
        <p class='attribute'><strong>开始时间 : </strong> 2023-11-06 21:27:03</p>
        <p class='attribute'><strong>合计耗时 : </strong> 0:00:04.128065</p>
        <p class='attribute'><strong>测试结果 : </strong> 共 19，通过 11，失败 4，错误 4，通过率= 57.89%</p>

        <p class='description'>测试报告的描述信息，我是刘涛，我做了一堆的描述，请查阅</p>
    </div>



    <p id='show_detail_line'>
        <a class="btn btn-primary" href='javascript:showCase(0)'>概要{ 57.89% }</a>
        <a class="btn btn-danger" href='javascript:showCase(1)'>失败{ 4 }</a>
        <a class="btn btn-success" href='javascript:showCase(2)'>通过{ 11 }</a>
        <a class="btn btn-info" href='javascript:showCase(3)'>所有{ 19 }</a>
    </p>
    <table id='result_table' class="table table-condensed table-bordered table-hover">
        <colgroup>
            <col align='left' />
            <col align='right' />
            <col align='right' />
            <col align='right' />
            <col align='right' />
            <col align='right' />
        </colgroup>
        <tr id='header_row' class="text-center success" style="font-weight: bold;font-size: 14px;">
            <td>用例集/测试用例</td>
            <td>总计</td>
            <td>通过</td>
            <td>失败</td>
            <td>错误</td>
            <td>详细</td>
        </tr>

        <tr class='errorClass warning'>
            <td>class20_unittest.unittest_demo.UnitDemo</td>
            <td class="text-center">4</td>
            <td class="text-center">2</td>
            <td class="text-center">1</td>
            <td class="text-center">1</td>
            <td class="text-center"><a href="javascript:showClassDetail('c1',4)" class="detail" id='c1'>详细</a></td>
        </tr>

        <tr id='pt1_1' class='hiddenRow'>
            <td class='passCase'><div class='testcase'>test_01</div></td>
            <td colspan='5' align='center'>
                <!--默认收起错误信息 -Findyou
                <button id='btn_pt1_1' type="button"  class="btn btn-danger btn-xs collapsed" data-toggle="collapse" data-target='#div_pt1_1'>通过</button>
                <div id='div_pt1_1' class="collapse">  -->

                <!-- 默认展开错误信息 -Findyou -->
                <button id='btn_pt1_1' type="button"  class="btn btn-danger btn-xs" data-toggle="collapse" data-target='#div_pt1_1'>通过</button>
                <div id='div_pt1_1' class="collapse in">
    <pre>

pt1_1: 这是方法级别的前置
这是01测试用例
这是方法级别的后置


    </pre>
                </div>
            </td>
        </tr>

        <tr id='ft1_2' class='none'>
            <td class='errorCase'><div class='testcase'>test_02</div></td>
            <td colspan='5' align='center'>
                <!--默认收起错误信息 -Findyou
                <button id='btn_ft1_2' type="button"  class="btn btn-danger btn-xs collapsed" data-toggle="collapse" data-target='#div_ft1_2'>错误</button>
                <div id='div_ft1_2' class="collapse">  -->

                <!-- 默认展开错误信息 -Findyou -->
                <button id='btn_ft1_2' type="button"  class="btn btn-danger btn-xs" data-toggle="collapse" data-target='#div_ft1_2'>错误</button>
                <div id='div_ft1_2' class="collapse in">
    <pre>

ft1_2: 这是方法级别的前置
这是02测试用例
Exception ignored in: &lt;function Service.__del__ at 0x0000024B57F7D990&gt;
Traceback (most recent call last):
  File "D:\Python\lib\site-packages\selenium\webdriver\common\service.py", line 183, in __del__
    self.stop()
  File "D:\Python\lib\site-packages\selenium\webdriver\common\service.py", line 149, in stop
    self.send_remote_shutdown_command()
  File "D:\Python\lib\site-packages\selenium\webdriver\common\service.py", line 128, in send_remote_shutdown_command
    request.urlopen(f"{self.service_url}/shutdown")
  File "D:\Python\lib\urllib\request.py", line 216, in urlopen
    return opener.open(url, data, timeout)
  File "D:\Python\lib\urllib\request.py", line 519, in open
    response = self._open(req, data)
  File "D:\Python\lib\urllib\request.py", line 536, in _open
    result = self._call_chain(self.handle_open, protocol, protocol +
  File "D:\Python\lib\urllib\request.py", line 496, in _call_chain
    result = func(*args)
  File "D:\Python\lib\urllib\request.py", line 1377, in http_open
    return self.do_open(http.client.HTTPConnection, req)
  File "D:\Python\lib\urllib\request.py", line 1348, in do_open
    h.request(req.get_method(), req.selector, req.data, headers,
  File "D:\Python\lib\http\client.py", line 1282, in request
    self._send_request(method, url, body, headers, encode_chunked)
  File "D:\Python\lib\http\client.py", line 1328, in _send_request
    self.endheaders(body, encode_chunked=encode_chunked)
  File "D:\Python\lib\http\client.py", line 1277, in endheaders
    self._send_output(message_body, encode_chunked=encode_chunked)
  File "D:\Python\lib\http\client.py", line 1037, in _send_output
    self.send(msg)
  File "D:\Python\lib\http\client.py", line 975, in send
    self.connect()
  File "D:\Python\lib\http\client.py", line 941, in connect
    self.sock = self._create_connection(
  File "D:\Python\lib\socket.py", line 833, in create_connection
    sock.connect(sa)
KeyboardInterrupt:
这是方法级别的后置
Traceback (most recent call last):
  File "D:\pyworkspace\python_class_hcc_v3\class20_unittest\unittest_demo.py", line 49, in test_02
    1 / 0
ZeroDivisionError: division by zero


    </pre>
                </div>
            </td>
        </tr>

        <tr id='pt1_3' class='hiddenRow'>
            <td class='passCase'><div class='testcase'>test_03</div></td>
            <td colspan='5' align='center'>
                <!--默认收起错误信息 -Findyou
                <button id='btn_pt1_3' type="button"  class="btn btn-danger btn-xs collapsed" data-toggle="collapse" data-target='#div_pt1_3'>通过</button>
                <div id='div_pt1_3' class="collapse">  -->

                <!-- 默认展开错误信息 -Findyou -->
                <button id='btn_pt1_3' type="button"  class="btn btn-danger btn-xs" data-toggle="collapse" data-target='#div_pt1_3'>通过</button>
                <div id='div_pt1_3' class="collapse in">
    <pre>

pt1_3: 这是方法级别的前置
这是03测试用例
这是方法级别的后置


    </pre>
                </div>
            </td>
        </tr>

        <tr id='ft1_4' class='none'>
            <td class='failCase'><div class='testcase'>test_04</div></td>
            <td colspan='5' align='center'>
                <!--默认收起错误信息 -Findyou
                <button id='btn_ft1_4' type="button"  class="btn btn-danger btn-xs collapsed" data-toggle="collapse" data-target='#div_ft1_4'>失败</button>
                <div id='div_ft1_4' class="collapse">  -->

                <!-- 默认展开错误信息 -Findyou -->
                <button id='btn_ft1_4' type="button"  class="btn btn-danger btn-xs" data-toggle="collapse" data-target='#div_ft1_4'>失败</button>
                <div id='div_ft1_4' class="collapse in">
    <pre>

ft1_4: 这是方法级别的前置
这是04测试用例
这是方法级别的后置
Traceback (most recent call last):
  File "D:\pyworkspace\python_class_hcc_v3\class20_unittest\unittest_demo.py", line 41, in test_04
    self.assertEqual(3.1111111111, 3.11111112, msg='断言失败')
AssertionError: 3.1111111111 != 3.11111112 : 断言失败


    </pre>
                </div>
            </td>
        </tr>

        <tr class='errorClass warning'>
            <td>class21_suite_runner.unittest_demo.UnitDemo</td>
            <td class="text-center">4</td>
            <td class="text-center">2</td>
            <td class="text-center">1</td>
            <td class="text-center">1</td>
            <td class="text-center"><a href="javascript:showClassDetail('c2',4)" class="detail" id='c2'>详细</a></td>
        </tr>

        <tr id='pt2_1' class='hiddenRow'>
            <td class='passCase'><div class='testcase'>test_01</div></td>
            <td colspan='5' align='center'>
                <!--默认收起错误信息 -Findyou
                <button id='btn_pt2_1' type="button"  class="btn btn-danger btn-xs collapsed" data-toggle="collapse" data-target='#div_pt2_1'>通过</button>
                <div id='div_pt2_1' class="collapse">  -->

                <!-- 默认展开错误信息 -Findyou -->
                <button id='btn_pt2_1' type="button"  class="btn btn-danger btn-xs" data-toggle="collapse" data-target='#div_pt2_1'>通过</button>
                <div id='div_pt2_1' class="collapse in">
    <pre>

pt2_1: 这是方法级别的前置
这是01测试用例
这是方法级别的后置


    </pre>
                </div>
            </td>
        </tr>

        <tr id='ft2_2' class='none'>
            <td class='errorCase'><div class='testcase'>test_02</div></td>
            <td colspan='5' align='center'>
                <!--默认收起错误信息 -Findyou
                <button id='btn_ft2_2' type="button"  class="btn btn-danger btn-xs collapsed" data-toggle="collapse" data-target='#div_ft2_2'>错误</button>
                <div id='div_ft2_2' class="collapse">  -->

                <!-- 默认展开错误信息 -Findyou -->
                <button id='btn_ft2_2' type="button"  class="btn btn-danger btn-xs" data-toggle="collapse" data-target='#div_ft2_2'>错误</button>
                <div id='div_ft2_2' class="collapse in">
    <pre>

ft2_2: 这是方法级别的前置
这是02测试用例
这是方法级别的后置
Traceback (most recent call last):
  File "D:\pyworkspace\python_class_hcc_v3\class21_suite_runner\unittest_demo.py", line 49, in test_02
    1 / 0
ZeroDivisionError: division by zero


    </pre>
                </div>
            </td>
        </tr>

        <tr id='pt2_3' class='hiddenRow'>
            <td class='passCase'><div class='testcase'>test_03</div></td>
            <td colspan='5' align='center'>
                <!--默认收起错误信息 -Findyou
                <button id='btn_pt2_3' type="button"  class="btn btn-danger btn-xs collapsed" data-toggle="collapse" data-target='#div_pt2_3'>通过</button>
                <div id='div_pt2_3' class="collapse">  -->

                <!-- 默认展开错误信息 -Findyou -->
                <button id='btn_pt2_3' type="button"  class="btn btn-danger btn-xs" data-toggle="collapse" data-target='#div_pt2_3'>通过</button>
                <div id='div_pt2_3' class="collapse in">
    <pre>

pt2_3: 这是方法级别的前置
这是03测试用例
这是方法级别的后置


    </pre>
                </div>
            </td>
        </tr>

        <tr id='ft2_4' class='none'>
            <td class='failCase'><div class='testcase'>test_04</div></td>
            <td colspan='5' align='center'>
                <!--默认收起错误信息 -Findyou
                <button id='btn_ft2_4' type="button"  class="btn btn-danger btn-xs collapsed" data-toggle="collapse" data-target='#div_ft2_4'>失败</button>
                <div id='div_ft2_4' class="collapse">  -->

                <!-- 默认展开错误信息 -Findyou -->
                <button id='btn_ft2_4' type="button"  class="btn btn-danger btn-xs" data-toggle="collapse" data-target='#div_ft2_4'>失败</button>
                <div id='div_ft2_4' class="collapse in">
    <pre>

ft2_4: 这是方法级别的前置
这是04测试用例
这是方法级别的后置
Traceback (most recent call last):
  File "D:\pyworkspace\python_class_hcc_v3\class21_suite_runner\unittest_demo.py", line 41, in test_04
    self.assertEqual(3.1111111111, 3.11111112, msg='断言失败')
AssertionError: 3.1111111111 != 3.11111112 : 断言失败


    </pre>
                </div>
            </td>
        </tr>

        <tr class='passClass warning'>
            <td>class21_suite_runner.unittest_demo.UnitDemo1</td>
            <td class="text-center">1</td>
            <td class="text-center">1</td>
            <td class="text-center">0</td>
            <td class="text-center">0</td>
            <td class="text-center"><a href="javascript:showClassDetail('c3',1)" class="detail" id='c3'>详细</a></td>
        </tr>

        <tr id='pt3_1' class='hiddenRow'>
            <td class='passCase'><div class='testcase'>test_01_login</div></td>
            <td colspan='5' align='center'>
                <!--默认收起错误信息 -Findyou
                <button id='btn_pt3_1' type="button"  class="btn btn-danger btn-xs collapsed" data-toggle="collapse" data-target='#div_pt3_1'>通过</button>
                <div id='div_pt3_1' class="collapse">  -->

                <!-- 默认展开错误信息 -Findyou -->
                <button id='btn_pt3_1' type="button"  class="btn btn-danger btn-xs" data-toggle="collapse" data-target='#div_pt3_1'>通过</button>
                <div id='div_pt3_1' class="collapse in">
    <pre>

pt3_1: 这是login测试用例


    </pre>
                </div>
            </td>
        </tr>

        <tr class='errorClass warning'>
            <td>class21_suite_runner.unittest_demo1.UnitDemo</td>
            <td class="text-center">4</td>
            <td class="text-center">2</td>
            <td class="text-center">1</td>
            <td class="text-center">1</td>
            <td class="text-center"><a href="javascript:showClassDetail('c4',4)" class="detail" id='c4'>详细</a></td>
        </tr>

        <tr id='pt4_1' class='hiddenRow'>
            <td class='passCase'><div class='testcase'>test_01</div></td>
            <td colspan='5' align='center'>
                <!--默认收起错误信息 -Findyou
                <button id='btn_pt4_1' type="button"  class="btn btn-danger btn-xs collapsed" data-toggle="collapse" data-target='#div_pt4_1'>通过</button>
                <div id='div_pt4_1' class="collapse">  -->

                <!-- 默认展开错误信息 -Findyou -->
                <button id='btn_pt4_1' type="button"  class="btn btn-danger btn-xs" data-toggle="collapse" data-target='#div_pt4_1'>通过</button>
                <div id='div_pt4_1' class="collapse in">
    <pre>

pt4_1: 这是方法级别的前置
这是01测试用例
这是方法级别的后置


    </pre>
                </div>
            </td>
        </tr>

        <tr id='ft4_2' class='none'>
            <td class='errorCase'><div class='testcase'>test_02</div></td>
            <td colspan='5' align='center'>
                <!--默认收起错误信息 -Findyou
                <button id='btn_ft4_2' type="button"  class="btn btn-danger btn-xs collapsed" data-toggle="collapse" data-target='#div_ft4_2'>错误</button>
                <div id='div_ft4_2' class="collapse">  -->

                <!-- 默认展开错误信息 -Findyou -->
                <button id='btn_ft4_2' type="button"  class="btn btn-danger btn-xs" data-toggle="collapse" data-target='#div_ft4_2'>错误</button>
                <div id='div_ft4_2' class="collapse in">
    <pre>

ft4_2: 这是方法级别的前置
这是02测试用例
这是方法级别的后置
Traceback (most recent call last):
  File "D:\pyworkspace\python_class_hcc_v3\class21_suite_runner\unittest_demo1.py", line 49, in test_02
    1 / 0
ZeroDivisionError: division by zero


    </pre>
                </div>
            </td>
        </tr>

        <tr id='pt4_3' class='hiddenRow'>
            <td class='passCase'><div class='testcase'>test_03</div></td>
            <td colspan='5' align='center'>
                <!--默认收起错误信息 -Findyou
                <button id='btn_pt4_3' type="button"  class="btn btn-danger btn-xs collapsed" data-toggle="collapse" data-target='#div_pt4_3'>通过</button>
                <div id='div_pt4_3' class="collapse">  -->

                <!-- 默认展开错误信息 -Findyou -->
                <button id='btn_pt4_3' type="button"  class="btn btn-danger btn-xs" data-toggle="collapse" data-target='#div_pt4_3'>通过</button>
                <div id='div_pt4_3' class="collapse in">
    <pre>

pt4_3: 这是方法级别的前置
这是03测试用例
这是方法级别的后置


    </pre>
                </div>
            </td>
        </tr>

        <tr id='ft4_4' class='none'>
            <td class='failCase'><div class='testcase'>test_04</div></td>
            <td colspan='5' align='center'>
                <!--默认收起错误信息 -Findyou
                <button id='btn_ft4_4' type="button"  class="btn btn-danger btn-xs collapsed" data-toggle="collapse" data-target='#div_ft4_4'>失败</button>
                <div id='div_ft4_4' class="collapse">  -->

                <!-- 默认展开错误信息 -Findyou -->
                <button id='btn_ft4_4' type="button"  class="btn btn-danger btn-xs" data-toggle="collapse" data-target='#div_ft4_4'>失败</button>
                <div id='div_ft4_4' class="collapse in">
    <pre>

ft4_4: 这是方法级别的前置
这是04测试用例
这是方法级别的后置
Traceback (most recent call last):
  File "D:\pyworkspace\python_class_hcc_v3\class21_suite_runner\unittest_demo1.py", line 41, in test_04
    self.assertEqual(3.1111111111, 3.11111112, msg='断言失败')
AssertionError: 3.1111111111 != 3.11111112 : 断言失败


    </pre>
                </div>
            </td>
        </tr>

        <tr class='passClass warning'>
            <td>class21_suite_runner.unittest_demo1.UnitDemo1</td>
            <td class="text-center">1</td>
            <td class="text-center">1</td>
            <td class="text-center">0</td>
            <td class="text-center">0</td>
            <td class="text-center"><a href="javascript:showClassDetail('c5',1)" class="detail" id='c5'>详细</a></td>
        </tr>

        <tr id='pt5_1' class='hiddenRow'>
            <td class='passCase'><div class='testcase'>test_01_login</div></td>
            <td colspan='5' align='center'>
                <!--默认收起错误信息 -Findyou
                <button id='btn_pt5_1' type="button"  class="btn btn-danger btn-xs collapsed" data-toggle="collapse" data-target='#div_pt5_1'>通过</button>
                <div id='div_pt5_1' class="collapse">  -->

                <!-- 默认展开错误信息 -Findyou -->
                <button id='btn_pt5_1' type="button"  class="btn btn-danger btn-xs" data-toggle="collapse" data-target='#div_pt5_1'>通过</button>
                <div id='div_pt5_1' class="collapse in">
    <pre>

pt5_1: 这是login测试用例


    </pre>
                </div>
            </td>
        </tr>

        <tr class='errorClass warning'>
            <td>class21_suite_runner.unittest_demo2.UnitDemo</td>
            <td class="text-center">4</td>
            <td class="text-center">2</td>
            <td class="text-center">1</td>
            <td class="text-center">1</td>
            <td class="text-center"><a href="javascript:showClassDetail('c6',4)" class="detail" id='c6'>详细</a></td>
        </tr>

        <tr id='pt6_1' class='hiddenRow'>
            <td class='passCase'><div class='testcase'>test_01</div></td>
            <td colspan='5' align='center'>
                <!--默认收起错误信息 -Findyou
                <button id='btn_pt6_1' type="button"  class="btn btn-danger btn-xs collapsed" data-toggle="collapse" data-target='#div_pt6_1'>通过</button>
                <div id='div_pt6_1' class="collapse">  -->

                <!-- 默认展开错误信息 -Findyou -->
                <button id='btn_pt6_1' type="button"  class="btn btn-danger btn-xs" data-toggle="collapse" data-target='#div_pt6_1'>通过</button>
                <div id='div_pt6_1' class="collapse in">
    <pre>

pt6_1: 这是方法级别的前置
这是01测试用例
这是方法级别的后置


    </pre>
                </div>
            </td>
        </tr>

        <tr id='ft6_2' class='none'>
            <td class='errorCase'><div class='testcase'>test_02</div></td>
            <td colspan='5' align='center'>
                <!--默认收起错误信息 -Findyou
                <button id='btn_ft6_2' type="button"  class="btn btn-danger btn-xs collapsed" data-toggle="collapse" data-target='#div_ft6_2'>错误</button>
                <div id='div_ft6_2' class="collapse">  -->

                <!-- 默认展开错误信息 -Findyou -->
                <button id='btn_ft6_2' type="button"  class="btn btn-danger btn-xs" data-toggle="collapse" data-target='#div_ft6_2'>错误</button>
                <div id='div_ft6_2' class="collapse in">
    <pre>

ft6_2: 这是方法级别的前置
这是02测试用例
这是方法级别的后置
Traceback (most recent call last):
  File "D:\pyworkspace\python_class_hcc_v3\class21_suite_runner\unittest_demo2.py", line 49, in test_02
    1 / 0
ZeroDivisionError: division by zero


    </pre>
                </div>
            </td>
        </tr>

        <tr id='pt6_3' class='hiddenRow'>
            <td class='passCase'><div class='testcase'>test_03</div></td>
            <td colspan='5' align='center'>
                <!--默认收起错误信息 -Findyou
                <button id='btn_pt6_3' type="button"  class="btn btn-danger btn-xs collapsed" data-toggle="collapse" data-target='#div_pt6_3'>通过</button>
                <div id='div_pt6_3' class="collapse">  -->

                <!-- 默认展开错误信息 -Findyou -->
                <button id='btn_pt6_3' type="button"  class="btn btn-danger btn-xs" data-toggle="collapse" data-target='#div_pt6_3'>通过</button>
                <div id='div_pt6_3' class="collapse in">
    <pre>

pt6_3: 这是方法级别的前置
这是03测试用例
这是方法级别的后置


    </pre>
                </div>
            </td>
        </tr>

        <tr id='ft6_4' class='none'>
            <td class='failCase'><div class='testcase'>test_04</div></td>
            <td colspan='5' align='center'>
                <!--默认收起错误信息 -Findyou
                <button id='btn_ft6_4' type="button"  class="btn btn-danger btn-xs collapsed" data-toggle="collapse" data-target='#div_ft6_4'>失败</button>
                <div id='div_ft6_4' class="collapse">  -->

                <!-- 默认展开错误信息 -Findyou -->
                <button id='btn_ft6_4' type="button"  class="btn btn-danger btn-xs" data-toggle="collapse" data-target='#div_ft6_4'>失败</button>
                <div id='div_ft6_4' class="collapse in">
    <pre>

ft6_4: 这是方法级别的前置
这是04测试用例
这是方法级别的后置
Traceback (most recent call last):
  File "D:\pyworkspace\python_class_hcc_v3\class21_suite_runner\unittest_demo2.py", line 41, in test_04
    self.assertEqual(3.1111111111, 3.11111112, msg='断言失败')
AssertionError: 3.1111111111 != 3.11111112 : 断言失败


    </pre>
                </div>
            </td>
        </tr>

        <tr class='passClass warning'>
            <td>class21_suite_runner.unittest_demo2.UnitDemo1</td>
            <td class="text-center">1</td>
            <td class="text-center">1</td>
            <td class="text-center">0</td>
            <td class="text-center">0</td>
            <td class="text-center"><a href="javascript:showClassDetail('c7',1)" class="detail" id='c7'>详细</a></td>
        </tr>

        <tr id='pt7_1' class='hiddenRow'>
            <td class='passCase'><div class='testcase'>test_01_login</div></td>
            <td colspan='5' align='center'>
                <!--默认收起错误信息 -Findyou
                <button id='btn_pt7_1' type="button"  class="btn btn-danger btn-xs collapsed" data-toggle="collapse" data-target='#div_pt7_1'>通过</button>
                <div id='div_pt7_1' class="collapse">  -->

                <!-- 默认展开错误信息 -Findyou -->
                <button id='btn_pt7_1' type="button"  class="btn btn-danger btn-xs" data-toggle="collapse" data-target='#div_pt7_1'>通过</button>
                <div id='div_pt7_1' class="collapse in">
    <pre>

pt7_1: 这是login测试用例


    </pre>
                </div>
            </td>
        </tr>

        <tr id='total_row' class="text-center active">
            <td>总计</td>
            <td>19</td>
            <td>11</td>
            <td>4</td>
            <td>4</td>
            <td>通过率：57.89%</td>
        </tr>
    </table>

    <div id='ending'>&nbsp;</div>
    <div style=" position:fixed;right:50px; bottom:30px; width:20px; height:20px;cursor:pointer">
        <a href="#"><span class="glyphicon glyphicon-eject" style = "font-size:30px;" aria-hidden="true">
    </span></a></div>


    </body>
    </html>

    <test name="YourTestName">
        <classes>
            <class name="org.teststack.token.ExtentTestNGListener"/>
            <!-- 其他测试类... -->
        </classes>
    </test>
</suite>